let form = layui.form
let layer = layui.layer;

userInfo()
// 封装函数 方便渲染复用
function userInfo() {
    // 请求数据
    axios.get('/my/userinfo').then(({ data: res }) => {
        console.log(res);

        // 给表单赋值
        //formTest 即 class="layui-form" 所在元素属性 lay-filter="" 对应的值
        form.val("formFilter", res.data);
    })
}


// 表单校验
form.verify({
    nickname: function (value, item) { //value：表单的值、item：表单的DOM对象
        //如果不想自动弹出默认提示框，可以直接返回 true，这时你可以通过其他任意方式提示（v2.5.7 新增）
        if (value.length < 2 || value.length > 6) {
            return '昵称长度必须是2-6位字符'
        }
    }
});

// 更新用户更改信息
$('#form').on('submit', function (e) {
    e.preventDefault() //阻止默认行为

    // 收集表单的数据
    const data = $(this).serialize()

    axios.post('/my/userinfo', data).then(({ data: { status, message } }) => {
        // console.log(res);
        if (status !== 0) {
            // 修改失败
            return layer.msg(message)
        }

        // 修改成功
        layer.msg(message)

        // 更新index页面中的昵称(把index父页面的get请求封装，然后子页面(userinfo)调用函数实现)
        window.parent.getUserInfo()
    })
})

// 获取重置按钮，绑定点击事件
$('#btnReset').on('click' , function(e) {
    // 重置按钮，会把表单的内容清空掉(默认功能)
    e.preventDefault() //阻止默认行为

    // 重新发送axios请求获取用户信息填充到表单中
    userInfo()
    
})